1. Field of the Invention
The present invention generally relates to communications, and more particularly to dynamic clock window adaption in a video decoder.
2. Description of Related Art
In a conventional analog broadcast television system, such as one using a NTSC (National Television System Committee), PAL (Phase Alternating Line) or SECAM (Séquentiel couleur a mémoire or Sequential Color with Memory) format, the transmitted video consists of a sequence of still pictures or frames. For example, the NTSC protocol specifies about 30 frames per second, while the PAL/SECAM schemes specify 25 frames per second. Each frame consists of hundreds of horizontal scan lines. For example, each frame in the NTSC arrangement consists of 525 scan lines, among which the odd-numbered lines form an odd field and the even-numbered lines form an even field. The scan lines in each frame consist of not only video information but also vertical synchronization information, which is transmitted during a vertical blanking interval (VBI). For example, the scan lines 1-22 in the NTSC system are vertical-synchronization lines for the odd field, and the scan lines 263-285 are vertical-synchronization lines for the even field. The vertical-synchronization lines are used for synchronization and equalization and carry no video information.
The VBI is needed in conventional analog broadcast television systems to allow magnetic coils to deflect the electron beam vertically in a cathode ray tube (CRT). Although no such need exists in modern digital televisions, the VBI, however, still exists in modern digital broadcast television systems for carrying supplemental information (commonly called datacasting), such that extra information other than the actual video information may be provided to viewers. Various kinds of information may be broadcasted during the VBI such as Teletext, Vertical Interval Time Code (VITC), closed captioning (CC), Copy Generation Management System (CGMS), Widescreen Signaling (WSS), Video Programming System (VPS), etc.
At the receiving end (e.g., at a digital television), a demodulator demodulates the received modulated signals, followed by a video decoder performing synchronization and information recovery. FIG. 1 is a block diagram of a video decoder, which includes, among other things, a horizontal synchronizer 10, a vertical synchronizer 12, and a VBI decoder 14. After the horizontal synchronizer 10 and the vertical synchronizer 12 have achieved respectively horizontal and vertical synchronization with the received video signals and, accordingly, generated a horizontal synchronization signal (HSync_Timing) and vertical synchronization signal (VSync_Timing), the VBI data (VBI_Word_Data) may be retrieved and recovered by the VBI decoder 14.
According to a VBI-related protocol and with reference to the known Open System Interconnection (OSI) model defining communications in terms of layers such as a data-link layer, a preamble, or a clock run-in, and a frame code, or a start-of-frame delimiter (SFD), are incorporated by the data-link layer preceding a data body that contains the transmitted VBI information. FIG. 2 is an exemplary waveform of such a transmitted packet. The preamble is used to assist the receiver in performing, for example, the signal level/channel estimation and synchronization. In addition, the frame code is used in the receiver to determine the beginning of the data body.
After the preamble is horizontally synchronized, the receiver defines and generates a clock window, or a timing window. During the active period of the clock window, symbol timing recovery for the clock run-in may be performed to recover the timing, or the clock, of the received video signal. In other words, the symbol timing recovery of the clock run-in is enclosed by the clock window. FIG. 3 illustrates a clock window (CLK_Win) along with a received packet. As shown, the clock run-in typically begins running at a time after time T1_typ has elapsed from the falling edge of the horizontal synchronization (HSync_Timing). In an exemplary Teletext System-B, the length of T1_typ may be 10.1982 μs. Further, the clock run-in typically lasts for time T2_typ, and the frame code typically lasts for time T3_typ, with T2_typ and T3_typ being as long as 16 symbols and 8 symbols respectively in the exemplary Teletext System-B and with the predefined symbol time being 0.1441441 μs. T2 and T3 add up to T4 (i.e., 24 symbols), and T1 and T4 add up to T5. The below Table 1 shows the minimum, typical, and maximum values of the timing constraints T1 to T4 according to an exemplary system.
TABLE 1TimingconstraintMinimum (μs)Typical (μs)Maximum (μs)T1(10.1982 − 1.0)10.1982(10.1982 + 0.4)T216 * (0.1441405)16 * (0.1441441)16 * (0.1441477)T3 8 * (0.1441405) 8 * (0.1441441) 8 * (0.1441477)T424 * (0.1441405)24 * (0.1441441)24 * (0.1441477)
In Table 1, the symbol time 0.1441405 μs for the minimum timing constraints and the symbol time 0.1441477 μs for the maximum timing constraints are determined according to acceptable deviation(s) of the symbol times among radio-frequency (RF) channels. Specifically, in the exemplary system, it is assumed that the proportion of the minimum/maximum deviation with respect to the predefined symbol time is 250 parts-per-million (ppm). Therefore, the minimum/maximum deviation is 0.0000036, that is 0.1441441*250 ppm. Accordingly, the symbol time for the minimum timing constraints is 0.1441405 μs, that is (0.1441441-0.0000036) μs, and the symbol time for the maximum timing constraints is 0.1441477 μs, that is (0.1441441+0.0000036) μs.
Given considerations to various variations for a variety of distinct transmitters, normally, the clock window is asserted at a time after the minimum T1 (T1_min) has elapsed from the falling edge of the horizontal synchronization (HSync_Timing), and becomes de-asserted at a time after the maximum T1 plus the maximum T2 have elapsed from the falling edge of the horizontal synchronization (HSyn_Timing). Although such a loose and fixed-sized clock window may usually ensure that any clock run-in is covered within the clock window, the performance of the symbol timing recovery is, however, ineffective, particularly when the signal-to-noise ratio (SNR) of the received data is not sufficiently high.
For the reason that the conventional clock window could not effectively facilitate symbol timing recovery for the clock run-in, a need has arisen to propose a novel scheme that may adaptively provide a proper, dynamic and thus more noise-immune clock window for symbol timing recovery.